"use strict";

const { promisify } = require("util");
const request = promisify(Rokid.request);

var handlers = {
  "ROKID.INTENT.WELCOME": function() {
    try {
      this.setTts({
        tts: "您好，请问有什么可以帮您。"
      });
      this.emit(":done");
    } catch (error) {
      this.emit(":error", error);
    }
  },
  bestcoffeebar: async () => {
    var self = this;
    // var ttsRes = await new Promise((resolve, reject) => {
    //   let ttsStr = '';
    //   request({
    //       method: 'GET',
    //       url: 'https://www.toutiao.com/hot_words/',
    //       headers:{
    //           'User-Agent': 'request'
    //       }
    //   }, function(error, response, body) {
    //       if (error) {
    //           reject(error);
    //       }
    //       JSON.parse(body).forEach(function (item) {
    //           ttsStr += item + ',';
    //       });
    //       resolve(ttsStr);
    //   });
    // });
    var ttsRes = "";
    await request(
      {
        method: "GET",
        url: "https://www.toutiao.com/hot_words/",
        headers: {
          "User-Agent": "request"
        }
      },
      function(error, response, body) {
        if (error) {
          reject(error);
        }
        JSON.parse(body).forEach(function(item) {
          ttsRes += item + ",";
        });
      }
    );

    console.log(ttsRes);
    self.setTts({
      tts: ttsRes
    });
    self.emit(":done");
  },
  nicedrink: function() {
    try {
      this.setTts({
        tts: "只要是咖啡都很好喝。"
      });
      this.emit(":done");
    } catch (error) {
      this.emit(":error", error);
    }
  }
};

exports.handler = function(event, context, callback) {
  var rokid = Rokid.handler(event, context, callback);
  rokid.registerHandlers(handlers);
  rokid.execute();
};
